package com.training.test;

import com.training.Employee;
import com.training.Person;
import com.training.contract.ContractEmployee;
import com.training.contract.FixedContracEmployee;
import com.training.ft.FullTimeEmployee;
import com.training.ft.Student;



public class DynamicPolyEx {
	
	
	public static void main(String[] args) {
		
		// Person person = new Person();  - we cann't create  obj of interface
		// Employee employee = new Employee(); -we cann't create  obj of Abstract class
		
		FullTimeEmployee fullTimeEmployee = new FullTimeEmployee();
		//fullTimeEmployee.getBenfits();
		//fullTimeEmployee.payTax();
		//fullTimeEmployee.work();
	
		
		//Student student = new Student();
		//student.getBenfits();
		//student.payTax();
	 	
		Employee employee = new FullTimeEmployee();
		  
		
		  Person person  = new FullTimeEmployee();
		   
		  
		  person.getBenfits();
		  
		  person = new Student();
		  person.getBenfits();
		 
		//employee.getBenfits();
		//employee.work();
	//	employee.payTax();
		
		//person.payTax();
		//person.getBenfits();
		 
		
		Employee employee2 = new FixedContracEmployee();
		
		 
		
		
		Person contracEmployee	= new FixedContracEmployee();
		
		
		
		
		
		 
		
		
		
	}

}
